<?php

// 1.创建Server对象,监听127.0.0.1:9503端口
$serv = new swoole_server("127.0.0.1", 9503);

$serv->set([
    'worker_num'    => 8,       // worker进程数,一般为CPU个数的1-4倍
    'max_request'   => 10000,   // 根据内存酌量填写
]);

// 2.1.监听连接进入事件
/**
 * $fd          客户端连接的唯一标志
 * $reactor_id  线程id,此参数一般不写
 */
$serv->on('connect', function ($serv, $fd, $reactor_id) {
    echo "Client:{$reactor_id} - {$fd} Connect.\n";
});

// 2.2.监听数据接收事件
$serv->on('receive', function ($serv, $fd, $reactor_id, $data) {
    $serv->send($fd, "Server: {$reactor_id} - {$fd} " . $data);
});

// 2.3.监听连接关闭事件
$serv->on('close', function ($serv, $fd) {
    echo "Client:{$fd} Close\n";
});

// 3.启动服务
$serv->start();

// 测试是否能建立连接 终端 telnet 127.0.0.1 9501
// 测试是否开启8个worker ps aft | grep tcp_server.php